<?php
/**
 * Ruben
 * Date: 30/04/12
 */

include("SimpleImage.php");

function getPais($idP){
    if(!($iden = mysql_connect("localhost", "piAdmin", "piAdmin")))
        die ("Error: No se pudo conectar");

    // Selecciona la base de datos
    if(!mysql_select_db("pibd", $iden))
        die("Error: No existe la base de datos");
    $subSent = "SELECT nomPais FROM paises WHERE idPais = $idP";
    $resultadoPais = mysql_query($subSent, $iden);
    $nomPais = mysql_fetch_row($resultadoPais);
    $result = $nomPais[0];

    return $result;
}

function getPaisId($nameP){
    if(!($conec = mysql_connect("localhost", "piAdmin", "piAdmin")))
        die ("Error: No se pudo conectar");

    // Selecciona la base de datos
    if(!mysql_select_db("pibd", $conec))
        die("Error: No existe la base de datos");

    $subSent = "SELECT idPais FROM paises WHERE nomPais='$nameP'";
    $resultadoPais = mysql_query($subSent, $conec);
    $nomPais = mysql_fetch_row($resultadoPais);
    $result = $nomPais[0];

    return $result;
}

function getAlbumName($idAlb){
    if(!($conec = mysql_connect("localhost", "piAdmin", "piAdmin")))
        die ("Error: No se pudo conectar");

    // Selecciona la base de datos
    if(!mysql_select_db("pibd", $conec))
        die("Error: No existe la base de datos");

    $subSent = "SELECT titulo FROM albumes WHERE idAlbum='$idAlb'";
    $resultadoPais = mysql_query($subSent, $conec);
    $nomPais = mysql_fetch_row($resultadoPais);
    $result = $nomPais[0];

    return $result;
}

function getUserByAlbum($idAlb){
    if(!($conec = mysql_connect("localhost", "piAdmin", "piAdmin")))
        die ("Error: No se pudo conectar");

    // Selecciona la base de datos
    if(!mysql_select_db("pibd", $conec))
        die("Error: No existe la base de datos");

    $subSent = "SELECT nomUsuario FROM albumes,usuarios WHERE idAlbum='$idAlb' and usuario=idUsuario";
    $resultadoPais = mysql_query($subSent, $conec);
    $nomPais = mysql_fetch_row($resultadoPais);
    $result = $nomPais[0];

    return $result;
}

function loginUser($user,$pass){
    $correct = false;
    if(!($iden = mysql_connect("localhost", "piAdmin", "piAdmin")))
        die ("Error: No se pudo conectar");

    // Selecciona la base de datos
    if(!mysql_select_db("pibd", $iden))
        die("Error: No existe la base de datos");

    $user = mysql_real_escape_string($user);
    $pass = mysql_real_escape_string($pass);
    $pass = md5($pass);
    
    $subSent = "SELECT clave FROM usuarios WHERE nomUsuario = '$user'";

    //echo $subSent;

    
    $resultado = mysql_query($subSent, $iden);
    if (mysql_num_rows($resultado)>0){
        $usPass = mysql_fetch_row($resultado);
        $usPass = $usPass[0];
        echo $usPass."<br/>";
        echo $pass;

        if ($pass == $usPass){
            $correct = true;
        }
    }
    
    // Cierra la conexión con la base de datos
    mysql_close($iden);

    return $correct;
}

function getIdUser($usrName){
    $correct = 0;
    if(!($iden = mysql_connect("localhost", "piAdmin", "piAdmin")))
        die ("Error: No se pudo conectar");

    // Selecciona la base de datos
    if(!mysql_select_db("pibd", $iden))
        die("Error: No existe la base de datos");



    $subSent = "SELECT idUsuario FROM usuarios WHERE nomUsuario = '$usrName'";

    //echo $subSent;


    $resultado = mysql_query($subSent, $iden);
    if (mysql_num_rows($resultado)==1){
        $usPass = mysql_fetch_row($resultado);
        $correct = $usPass[0];
    }

    // Cierra la conexión con la base de datos
    mysql_close($iden);

    return $correct;
}

function validar($_POST){
    $valido = true;
    if (isset($_POST["loginReg"])){
        $texto = $_POST["loginReg"];
        $expreg = "/^[a-zA-Z0-9]{3,15}+$/";
        if(preg_match( $expreg , $texto) == 0){
            echo "<p>El login debe tener entre 3 y 15 letras o números</p>";
            $valido = false;
        }

    }else{
        echo "<p>Escriba un login.</p>";
        $valido = false;
    }

    if (isset($_POST["passwordReg"])){
        $texto = $_POST["passwordReg"];
        $expreg = "/^[a-zA-Z0-9_]{6,15}+$/";
        if(preg_match( $expreg , $texto) == 0 ||
           preg_match( "/[.]*[0-9]+[.]*/" , $texto) == 0 ||
            preg_match( "/[.]*[a-z]+[.]*/" , $texto) == 0 ||
            preg_match( "/[.]*[A-Z]+[.]*/" , $texto) == 0){
            echo "<p>La contraseña debe contener entre 6 y 15 letras, numeros o barras bajas.</p>";
            $valido = false;
        }else{
            if (isset($_POST["passwordReg2"])){
                if ($_POST["passwordReg"]!=$_POST["passwordReg2"]){
                    echo "<p>Las contraseñas deben coincidir.</p>";
                    $valido = false;
                }
            } else{
                echo "<p>Escriba una contreseña.</p>";
                $valido = false;
            }
        }

    }else{
        echo "<p>Escriba una contreseña.</p>";
        $valido = false;
    }

    if (isset($_POST["email"])){
        $texto = $_POST["email"];
        $expreg = "/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/";
        if (preg_match( $expreg , $texto) == 0){
            echo "<p>Mail incorrecto.</p>";
            $valido = false;
        }
    }else{
        echo "<p>Selecccione un mail.</p>";
        $valido = false;
    }

    if (isset($_POST["sex"])){
        $texto = $_POST["sex"];
        if ($texto!='hombre' && $texto!='mujer'){
            echo "<p>Sexo incorrecto.</p>";
            $valido = false;
        }
    }else{
        echo "<p>Selecccione un sexo.</p>";
        $valido = false;
    }

    if (isset($_POST["nacimiento"])){
        $texto = $_POST["nacimiento"];
        $expreg = "/^\d{1,2}\/\d{1,2}\/\d{4}$/";
        if (preg_match( $expreg , $texto) == 0){
            echo "<p>Fecha incorrecta.</p>";
            $valido = false;
        }else{
            list($d, $m, $y) = explode('/',$texto);
            if (!checkdate($m,$d,$y) || $y >= date('Y')){
                echo "<p>Fecha incorrecta.</p>";
                $valido = false;
            }
        }
    }else{
        echo "<p>Escriba una fecha.</p>";
        $valido = false;
    }

    return $valido;
}

function insertarNuevoUsuario($_POST){
    $login = $_POST['loginReg'];
    $password = md5($_POST['passwordReg']);
    $email = $_POST['email'];
    $sex = $_POST['sex'];
    $fnac = $_POST['nacimiento'];
    list($d, $m, $y) = explode('/',$fnac);
    $fnac = $y."-".$m."-".$d;
    if ($sex == 'hombre'){
        $sex = 0;
    }else{
        $sex = 1;
    }

    $sent = "INSERT INTO usuarios VALUES (null,'$login','$password','$email',$sex, '$fnac'";

    if (isset($_POST['ciudad'])){
        $sent .= ", '{$_POST['ciudad']}'";
    }else{
        $sent .= ", null";
    }
    if (isset($_POST['pais'])){
        if ($_POST['pais']!='')
        $sent .= ", {$_POST['pais']}";
    }else{
        $sent .= ", null";
    }
    $sent .= ", null";
    

    $today = date("Y-m-d");
    $sent .= ",'$today')";
    echo $sent;
    return insertWithImage($sent,"UPDATE usuarios SET foto=","WHERE idUsuario=",$_POST,true);
}

function insertWithImage($sent1, $sentFile ,$sentId, $_POST, $user){
    $bien = false;
    $newImage = new SimpleImage();
    if ($_FILES['foto']['error']==0){
        if(!($iden = mysql_connect("localhost", "root", "wenli")))
            $bien = false;
        mysql_set_charset ("utf8",$iden);
        // Selecciona la base de datos
        if(!mysql_select_db("pibd", $iden))
            $bien = false;

        $resultado = mysql_query($sent1, $iden);

        $toCoct = mysql_insert_id($iden);
        $real = $_FILES['foto']['name'];
        $temp = $_FILES['foto']['tmp_name'];


        echo "Error:".$_FILES['foto']['error']."<br />";
        echo "Temp: ".$_FILES['foto']['tmp_name']."<br />";
        echo "Real: ".$_FILES['foto']['name']."<br />";
        echo "Size: ".$_FILES['foto']['size']."<br />";
        echo "Creado: ".$toCoct."_user_".$real."<br />";

        if ($user){
            $nombreFinal = $toCoct."_user_".$real;
        }else{
            $nombreFinal = $toCoct."_".$real;
        }

        $newImage->load($temp);
        if ($newImage->getWidth()>500){
            $newImage->resizeToWidth(500);
        }
        if ($newImage->getHeight()>500){
            $newImage->resizeToHeight(500);
        }
        $sudida =  $newImage->save("images/" .$nombreFinal,$newImage->image_type);//move_uploaded_file($_FILES['foto']['tmp_name'],"images/" .$toCoct."_user_".$real);
        if ($newImage->getWidth()>100){
            $newImage->resizeToWidth(100);
        }
        if ($newImage->getHeight()>100){
            $newImage->resizeToHeight(100);
        }
        $newImage->save("images/thumb" .$nombreFinal,$newImage->image_type);

        echo "Alamacenado en:"."images/" .$toCoct."_user_".$real."<br />";
        echo "Subida correcta: ".$sudida."<br />";

        $sent2 = $sentFile."'".$nombreFinal."' ".$sentId."'".$toCoct."'";
        echo $sent2;
        $resultado = mysql_query($sent2, $iden);
        if ($resultado){
            $bien = true;
        }

        mysql_close($iden);
    }else{
        echo "<br/>Error: " . $newImage->msgError[$_FILES["foto"]["error"]] . "<br />";
    }
    return $bien;
}

function uploadImage($toCoct, $user){
    $bien = false;
    $newImage = new SimpleImage();
    if ($_FILES['foto']['error']==0){

        $real = $_FILES['foto']['name'];
        $temp = $_FILES['foto']['tmp_name'];


        echo "Error:".$_FILES['foto']['error']."<br />";
        echo "Temp: ".$_FILES['foto']['tmp_name']."<br />";
        echo "Real: ".$_FILES['foto']['name']."<br />";
        echo "Size: ".$_FILES['foto']['size']."<br />";
        echo "Creado: ".$toCoct."_user_".$real."<br />";

        if ($user){
            $nombreFinal = $toCoct."_user_".$real;
        }else{
            $nombreFinal = $toCoct."_".$real;
        }

        $newImage->load($temp);
        if ($newImage->getWidth()>500){
            $newImage->resizeToWidth(500);
        }
        if ($newImage->getHeight()>500){
            $newImage->resizeToHeight(500);
        }
        $sudida =  $newImage->save("images/" .$nombreFinal,$newImage->image_type);//move_uploaded_file($_FILES['foto']['tmp_name'],"images/" .$toCoct."_user_".$real);
        if ($newImage->getWidth()>100){
            $newImage->resizeToWidth(100);
        }
        if ($newImage->getHeight()>100){
            $newImage->resizeToHeight(100);
        }
        $newImage->save("images/thumb" .$nombreFinal,$newImage->image_type);

        echo "Alamacenado en:"."images/" .$toCoct."_user_".$real."<br />";
        echo "Subida correcta: ".$sudida."<br />";

    }else{
        echo "<br/>Error: " . $newImage->msgError[$_FILES["foto"]["error"]] . "<br />";
    }
}

function updateUsuario($_POST,$usuarioSesion){
    $login = $_POST['loginReg'];
    $password = md5($_POST['passwordReg']);
    $email = $_POST['email'];
    $sex = $_POST['sex'];
    $fnac = $_POST['nacimiento'];
    list($d, $m, $y) = explode('/',$fnac);
    $fnac = $y."-".$m."-".$d;
    if ($sex == 'hombre'){
        $sex = 0;
    }else{
        $sex = 1;
    }

    $sent = "UPDATE usuarios SET nomUsuario='$login', clave='$password', email='$email', sexo='$sex', fNacimiento='$fnac'";

    if (isset($_POST['ciudad'])){
        $sent .= ", ciudad = '{$_POST['ciudad']}'";
    }
    if (isset($_POST['pais'])){
        if ($_POST['pais']!='')
        $sent .= ", pais = {$_POST['pais']}";
    }

    if (isset($_FILES['foto'])){
        $nameFoto = getIdUser($login)."_user_".$_FILES['foto']['name'];
        $sent .= ", foto = '$nameFoto'";
    }

    $today = date("Y-m-d");
    $sent .= " WHERE nomUsuario='$usuarioSesion'";
    echo $sent;

    uploadImage(getIdUser($login), true);
    return sqlSentencia($sent);
}

function getRandomIdPhoto(){
    $file = "seleccionadas.txt";
    $idsel = 1;
    if (file_exists($file)){
        $fichero = file($file);
        $rand = rand(0,sizeof($fichero)-1);
        //echo "<br/>Num: ".$fichero[$rand]."<br/>";
        $idsel = $fichero[$rand];
    }

    return $idsel;
}

function sqlSentencia($sent){
    if(!($iden = mysql_connect("localhost", "piAdmin", "piAdmin")))
        die ("Error: No se pudo conectar");


    mysql_set_charset ("utf8",$iden);
    // Selecciona la base de datos
    if(!mysql_select_db("pibd", $iden))
        die("Error: No existe la base de datos");


    $resultado = mysql_query($sent, $iden);


    // Cierra la conexión con la base de datos
    mysql_close($iden);

    return $resultado;
}

?>
 
